草庐IT

Java 在运行时替换 jar

全部标签

ruby - 如何找到我的 Ruby 程序运行在哪个操作系统上?

我希望我的Ruby程序在Mac上和在Windows上做不同的事情。我怎样才能知道我的程序在哪个系统上运行? 最佳答案 使用RUBY_PLATFORM常量,并可选择将其包装在模块中以使其更友好:moduleOSdefOS.windows?(/cygwin|mswin|mingw|bccwin|wince|emx/=~RUBY_PLATFORM)!=nilenddefOS.mac?(/darwin/=~RUBY_PLATFORM)!=nilenddefOS.unix?!OS.windows?enddefOS.linux?OS.unix?

ruby - 如何从终端运行 Ruby 代码?

我需要从终端运行几行Ruby代码,但找不到所需的参数。你能解释一下如何做到这一点吗? 最佳答案 如果安装了Ruby,那么rubyyourfile.rb其中yourfile.rb是包含ruby​​代码的文件。或者irb启动交互式Ruby环境,您可以在其中键入代码行并立即查看结果。 关于ruby-如何从终端运行Ruby代码?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/123788

ruby - Ruby 中的 java 接口(interface)等价物是什么?

我们能否像在java中那样在Ruby中公开接口(interface),并强制Ruby模块或类实现接口(interface)定义的方法。一种方法是使用继承和method_missing来实现相同的目的,但是还有其他更合适的方法吗? 最佳答案 Ruby与任何其他语言一样具有接口(interface)。请注意,您必须注意不要将接口(interface)的概念与interface的概念混淆,接口(interface)是一个单元的职责、保证和协议(protocol)的抽象规范。这是Java、C#和VB.NET编程语言中的关键字。在Ruby中,

ruby - 我如何从 Capistrano 运行 rake 任务?

我已经有一个deploy.rb可以在我的生产服务器上部署我的应用程序。我的应用程序包含一个自定义rake任务(lib/tasks目录中的一个.rake文件)。我想创建一个cap任务来远程运行该rake任务。 最佳答案 更明确一点,在您的\config\deploy.rb中,在任何任务或命名空间之外添加:namespace:rakedodesc"Runataskonaremoteserver."#runlike:capstagingrake:invoketask=a_certain_tasktask:invokedorun("cd#{

Ruby 用捕获的正则表达式模式替换字符串

我在将它翻译成Ruby时遇到了问题。这是一段JavaScript,它完全符合我的要求:functionget_code(str){returnstr.replace(/^(Z_.*):.*/,"$1")​​​​​​​​​​​​​​​​​​​​​​​​​​​;}我试过了gsub,sub,和replace但似乎没有一个能达到我的预期。以下是我尝试过的示例:"Z_sdsd:sdsd".gsub(/^(Z_.*):.*/){|capture|capture}"Z_sdsd:sdsd".gsub(/^(Z_.*):.*/,"$1")"Z_sdsd:sdsd".gsub(/^(Z_.*):.*/,

ruby - 如何在文件文本中搜索模式并将其替换为给定值

我正在寻找一个脚本来搜索文件(或文件列表)中的模式,如果找到,则用给定值替换该模式。想法? 最佳答案 免责声明:这种方法是对Ruby功能的简单说明,而不是用于替换文件中字符串的生产级解决方案。它容易出现各种故障情况,例如在崩溃、中断或磁盘已满的情况下丢失数据。此代码不适用于备份所有数据的快速一次性脚本。因此,请勿将此代码复制到您的程序中。这是一个快速的简短方法。file_names=['foo.txt','bar.txt']file_names.eachdo|file_name|text=File.read(file_name)ne

ruby-on-rails - 如何在测试环境运行Rails控制台并加载test_helper.rb?

背景:我在使用Thoughtbot的“工厂女孩”gem时遇到了一些问题,该gem用于创建要在单元测试和其他测试中使用的对象。我想转到控制台并运行不同的FactoryGirl调用以检查发生了什么。例如,我想去那里做...>>Factory(:user).inspect我知道您可以在不同的环境中运行控制台...$脚本/控制台RAILS_ENV=test但是当我这样做时,工厂类不可用。看起来好像test_helper.rb没有加载。我尝试了各种require调用,包括一个带有到test_helper.rb的绝对路径的调用,但它们的失败与此类似:$script/consoleRAILS_ENV

ruby-on-rails - 如何让 Ruby/Homebrew/RVM 在 Yosemite 上运行?

安装Yosemite后,我无法运行brew或ruby​​。我在brewupdate上遇到这个错误:/usr/local/bin/brew:/usr/local/Library/brew.rb:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby:badinterpreter:Nosuchfileordirectory/usr/local/bin/brew:line23:/usr/local/Library/brew.rb:Undefinederror:0在irb上得到这个错误:/System/Librar

ruby-on-rails - 如何避免运行 ActiveRecord 回调?

我有一些模型具有after_save回调。通常这很好,但在某些情况下,例如创建开发数据时,我想在不运行回调的情况下保存模型。有没有一种简单的方法可以做到这一点?类似于...Person#save(:run_callbacks=>false)或Person#save_without_callbacks我查看了Rails文档,但没有找到任何内容。然而,根据我的经验,Rails文档并不总能说明全部情况。更新我找到了ablogpost这解释了如何从这样的模型中删除回调:Foo.after_save.clear我找不到记录该方法的位置,但它似乎有效。 最佳答案

ruby - 如何在 Rspec 中只运行特定的测试?

我认为有一种方法可以只运行具有给定标签的测试。有人知道吗? 最佳答案 您可以使用:focus散列属性标记示例。例如,#spec/foo_spec.rbRSpec.describeFoodoit'isneverexecuted'doraise"neverreached"endit'runsthisspec',focus:truedoexpect(1).toeq(1)endendrspec--tagfocusspec/foo_spec.rb有关GitHub的更多信息.(谁有更好的链接,请指教)(更新)RSpec现在是superblydo